package hutool;

import cn.hutool.core.lang.Console;
import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil;
import lombok.Data;

import java.util.Date;

public class JsonTest {
    public static void main(String[] args) {
//        JSONObject json1 = JSONUtil.createObj()
//                .put("a", "value1")
//                .put("b", "value2")
//                .put("c", "value3");
//        System.out.println(json1.size());
//        System.out.println(json1);
//        JSONObject jsonObject = new JSONObject();
//        jsonObject.append("a","a");
//        jsonObject.append("b","b");
//        jsonObject.append("c","c");
//        System.out.println(jsonObject);
//
//        String jsonStr = "{\"a\":\"aaa\",\"b\":\"bbb\",\"c\":\"ccc\"}";
//        JSONObject jsonObject1 = new JSONObject(jsonStr);
//        System.out.println(jsonObject1);
//        JSONObject jsonObject2 = JSONUtil.parseObj(jsonStr);
//        System.out.println(jsonObject2);
//        System.out.println(jsonStr);

        UserA userA = new UserA();
        userA.setName("nameTest");
        userA.setDate(new Date());
        //false代表不跳过空值{"date":1622537925655,"a":null,"name":"nameTest"}
        System.out.println(JSONUtil.parseObj(userA, false));
        JSONObject json = JSONUtil.parseObj(userA, false);
        Console.log(json.toStringPretty());
    }
}
class UserA {
    private String name;
    private String a;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getA() {
        return a;
    }

    public void setA(String a) {
        this.a = a;
    }

    public Date getDate() {
        return date;
    }

    public void setDate(Date date) {
        this.date = date;
    }

    private Date date;
}
